package com.example.arr;

import java.util.Arrays;

/**
 * 合并两个有序数组
 * 两个有序整数数组nums1和nums2，将nums2合并到nums1中，使nums1成为一个有序数组。
 * 初始化nums1和nums2的元素数量分别是m和n。假设nums1的空间大小位m+n，这样它就有足够的空间保存nums2的元素。
 */
public class Merge {

    private static int[] merge(int[] nums1, int m, int[] nums2, int n) {
        // 数组合并
        if (n >= 0) System.arraycopy(nums2, 0, nums1, m, n);
        // 重排序
        Arrays.sort(nums1);
        return nums1;
    }

    public static void main(String[] args) {

        int[] nums1 = new int[]{1, 3, 5, 7, 9, 0, 0, 0, 0};
        int[] nums2 = new int[]{2, 4, 6, 8};
        System.out.println(Arrays.toString(merge(nums1, 5, nums2, 4)));

    }

}
